Computing systems have made significant contributions toward the advancement of modern society and are utilized in a number of applications to achieve advantageous results. Numerous devices, such as desktop personal computers (PCs), laptop PCs, tablet PCs, netbooks, smart phones, servers, and the like have facilitated increased productivity and reduced costs in communicating and analyzing data in most areas of entertainment, education, business, and science.
In some computing devices, such as desktop PCs, laptop PCs and the like, input events that affect the image of icons, menus, widgets, windows, cursor/pointers and the like on the display are processed by the operating system and not the application themselves. The display renders continuously under control of the operating system. Therefore, the input events may produce smooth motion on the display.
However, in other computing devices the applications themselves render the images that are output on the display. In smart phones, table PCs, netbooks and the like computing devices, an application will attempt to re-render when a currently displayed image is made invalid by a new input event or computation. For example, on a touch screen enabled device, the user receives feedback when an input event is sent to the applicable application, which in turn redraws the display image in response to the input. In such cases, the input event may be received too late to be rendered in time for the next display refresh, multiple input events may be dispatched for rendering in, a single display flip, and/or the like. Achieving smooth motion in such display invalidate-based systems is therefore challenging. Accordingly, there is a continued need for improved invalidate-based display techniques.